import {defineAsyncComponent} from "vue";
//组件名称
let components = {
    "vanilla": defineAsyncComponent(() =>
        import('@/views/calc/otcOtion/instrument/vanilla.vue')
    ),
    "digital": defineAsyncComponent(() =>
        import('@/views/calc/otcOtion/instrument/digital.vue')
    ),
    "doubledigital": defineAsyncComponent(() =>
        import('@/views/calc/otcOtion/instrument/doubleDigital.vue')
    ),
    "multidigital": defineAsyncComponent(() =>
        import('@/views/calc/otcOtion/instrument/multiDigital.vue')
    ),
    "touch": defineAsyncComponent(() =>
        import('@/views/calc/otcOtion/instrument/touch.vue')
    ),
    "singlesharkfin": defineAsyncComponent(() =>
        import('@/views/calc/otcOtion/instrument/shark.vue')
    ),
    "doubleshark": defineAsyncComponent(() =>
        import('@/views/calc/otcOtion/instrument/doubleShark.vue')
    ),
    "doublebarrier": defineAsyncComponent(() =>
        import('@/views/calc/otcOtion/instrument/doubleBarrier.vue')
    ),
    "rangeaccrual": defineAsyncComponent(() =>
        import('@/views/calc/otcOtion/instrument/rangeaccrual.vue')
    ),
    "eln_acb_basicsnowball": defineAsyncComponent(() =>
        import('@/views/calc/otcOtion/instrument/elnacb/basicsnowball.vue')
    ),
    "basicsnowball": defineAsyncComponent(() =>
        import('@/views/calc/otcOtion/instrument/elnacb/basicsnowball.vue')
    ),
    "standardsnowball": defineAsyncComponent(() =>
        import('@/views/calc/otcOtion/instrument/elnacb/standardsnowball.vue')
    ),
    "eln_acb_standardsnowball": defineAsyncComponent(() =>
        import('@/views/calc/otcOtion/instrument/elnacb/standardsnowball.vue')
    ),
    "flooredsnowball": defineAsyncComponent(() =>
        import('@/views/calc/otcOtion/instrument/elnacb/flooredsnowball.vue')
    ),
    "eln_acb_flooredsnowball": defineAsyncComponent(() =>
        import('@/views/calc/otcOtion/instrument/elnacb/flooredsnowball.vue')
    ),
    "uncappedairbag": defineAsyncComponent(() =>
        import('@/views/calc/otcOtion/instrument/elnacb/uncappedairbag.vue')
    ),
    "cappedairbag": defineAsyncComponent(() =>
        import('@/views/calc/otcOtion/instrument/elnacb/cappedairbag.vue')
    ),
    "boostedairbag": defineAsyncComponent(() =>
        import('@/views/calc/otcOtion/instrument/elnacb/boostedairbag.vue')
    )
}
//反算类型枚举
let computeType = {
    KNOCK_OUT_PAYOFF:0,
    UNTRIGGER_MINIMUM_PAYOFF:1,
    RANGE_PAYOFF:2,
    CAP_PRICE:3,
    FLOOR_PRICE:4,
    STRIKE:5,
    TRIGGER_LEVEL:6,
    EXERCISE_PAYOFF:7
}
export {components,computeType}